# LibTmux::Workspace::Plan::Step.[]

**Workspace Manager concept example** A working example of the core library. It can change without notice.

- **Module:** LibTmux::Workspace::Plan
- **Package:** libtmux-workspace
- **Language:** Ruby
- **Kind:** method
- **Source:** https://github.com/libtmux/libtmux-ruby/blob/d8ce4bbee0ca7748a81929f81f7d8d07f8c51267/gems/libtmux-workspace/lib/libtmux/workspace/plan.rb#L6
- **Page:** https://libtmux.org/en/ruby/v0.1.0.alpha.3/workspace/reference/libtmux-workspace-plan-step-[]/

```
def self.[]: (
  ::Integer,
  ::Symbol,
  ::String,
  ::Hash[::String, untyped],
  ::Array[::String],
  ::Symbol
) -> instance

def self.[]: (
  id: ::Integer,
  operation: ::Symbol,
  target: ::String,
  arguments: ::Hash[::String, untyped],
  produces: ::Array[::String],
  effect: ::Symbol
) -> instance
```

Behavior: Workspace plans.

Behavior contract: Workspace plans.

## Parameters

- `arg1` (`::Integer`) (for `[](arg1, arg2, arg3, arg4, arg5, arg6)`)
- `arg2` (`::Symbol`) (for `[](arg1, arg2, arg3, arg4, arg5, arg6)`)
- `arg3` (`::String`) (for `[](arg1, arg2, arg3, arg4, arg5, arg6)`)
- `arg4` (`::Hash[::String, untyped]`) (for `[](arg1, arg2, arg3, arg4, arg5, arg6)`)
- `arg5` (`::Array[::String]`) (for `[](arg1, arg2, arg3, arg4, arg5, arg6)`)
- `arg6` (`::Symbol`) (for `[](arg1, arg2, arg3, arg4, arg5, arg6)`)
- `id` (`::Integer`) (for `[](id, operation, target, arguments, produces, effect)`)
- `operation` (`::Symbol`) (for `[](id, operation, target, arguments, produces, effect)`)
- `target` (`::String`) (for `[](id, operation, target, arguments, produces, effect)`)
- `arguments` (`::Hash[::String, untyped]`) (for `[](id, operation, target, arguments, produces, effect)`)
- `produces` (`::Array[::String]`) (for `[](id, operation, target, arguments, produces, effect)`)
- `effect` (`::Symbol`) (for `[](id, operation, target, arguments, produces, effect)`)
